using System;
using System.Collections.Generic;
using System.Text;
using System.Xml.Serialization;

namespace UACluster.UAClusterAdmin
{
    [XmlRoot()]
    public class Configuration
    {
        public enum CommandExecModeList
        {
            psexec = 0,
            custom = 1
        }

        int _id;
        CommandExecModeList _cmdExecMode;
        bool _isWindowsCluster;
        string _friendlyName;
        string _description;
        string _hibernateCommand;
        string _shutdownCommand;
        string _restartCommand;

        [XmlAttribute()]
        public int Id
        {
            get { return _id; }
            set { _id = value; }
        }

        [XmlAttribute("isWindowsCluster")]
        public bool IsWindowsCluster
        {
            get { return _isWindowsCluster; }
            set { _isWindowsCluster = value; }
        }

        [XmlAttribute("CommandExecMode")]
        public CommandExecModeList CmdExecMode
        {
            get { return _cmdExecMode; }
            set { _cmdExecMode = value; }
        }

        [XmlElement()]
        public string FriendlyName
        {
            get { return _friendlyName;  }
            set { _friendlyName = value; }
        }

        [XmlElement()]
        public string Description
        {
            get { return _description; }
            set { _description = value; }
        }

        [XmlElement()]
        public string HibernateCommand
        {
            get { return _hibernateCommand; }
            set { _hibernateCommand = value; }
        }

        [XmlElement()]
        public string ShutdownCommand
        {
            get { return _shutdownCommand; }
            set { _shutdownCommand = value; }
        }

        [XmlElement()]
        public string RestartCommand
        {
            get { return _restartCommand; }
            set { _restartCommand = value; }
        }

    }
}
